#include <ESP8266WiFi.h>
#include <WiFiClient.h> 
#include <ESP8266WebServer.h>
#include <ESP8266HTTPClient.h>

const char *ssid = "IFSC";
const char *password = "campuschapeco";
const int http_port = 8080;

WiFiClient client;
#define D7    13 //dht
#define D1    5  //pushbuttom
#define D3    0  // LED

void setup() {
  pinMode(D3,OUTPUT);
  pinMode(D1,INPUT);
  digitalWrite(D3,LOW);   
  Serial.begin(115200);
  WiFi.mode(WIFI_OFF);delay(1000);
  WiFi.mode(WIFI_STA);
  WiFi.begin(ssid, password);Serial.println(".");
  Serial.print("Conectando...");
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);Serial.print(".");}
    Serial.println ("");
    Serial.print ("Conectado a ");Serial.println (ssid);
    Serial.print ("Endereço IP: ");Serial.println (WiFi.localIP ());
    Serial.print("MAC: ");    Serial.println(WiFi.macAddress());    
}

void EnviaServer(String postData){
    HTTPClient http;

    String servidores[3] = {
        "http://modulo8.migueldebarba.com.br/grupod/pamela/insertleitura.php",
        "http://modulo8.migueldebarba.com.br/grupod/paola/insertleitura.php",
        "http://modulo8.migueldebarba.com.br/miguel/insertleitura.php"
    };

    for (int i = 0; i < 3; i++) {
        http.begin(client, servidores[i]);
        http.addHeader("Content-Type", "application/x-www-form-urlencoded");
        int httpCode = http.POST(postData);
        String payload = http.getString();

        Serial.println("Servidor: " + servidores[i]);
        Serial.println("httpCode: " + String(httpCode));
        Serial.println("payload: " + payload);

        http.end();
    }
}

void loop() {
    digitalWrite(D3,HIGH);
    String idmac=WiFi.macAddress();    
    String from="ESP8266"; 
    String nome="Prova Pamela e Paola";   
    float pressao=random(0,55);
    float longitude = random(0,100);
    float latitude = random(0,1024);
    float valor = random(0,1024);
    float consumo = random(0,1024);
    float ladoum = random(0,1024);

    // Ajustadas as chaves POST para alinhamento com os $_POST do PHP:
    String postData = 
    "idmac=" + String(idmac)
    + "&nome=" + String(nome)
    + "&from=" + String(from)
    + "&longitude_n=" + String(longitude)
    + "&ladoum_cm=" + String(ladoum)
    + "&consumo_1=" + String(consumo)
    + "&latitude_s=" + String(latitude)
    + "&pressao_bar=" + String(pressao)
    + "&valor=" + String(valor);
    
    EnviaServer(postData); 
    delay(10000);
    digitalWrite(D3,LOW);
}